Dmitry Gutov [Wed, 27 May 2015 23:16:00 +0000 (02:16 +0300)]
Delete the old process in vc-setup-buffer
* lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
process here.
(vc-do-command): Rather than here (bug#20608).
Ivan Shmakov [Wed, 27 May 2015 22:15:27 +0000 (22:15 +0000)]
Avoid gratuitous delete-dups in face-at-point.
* lisp/faces.el (face-at-point): Do not compute the properly
ordered, duplicate-free list if only a single value is
requested anyway. (Bug#20519)
Ivan Shmakov [Wed, 27 May 2015 22:14:57 +0000 (22:14 +0000)]
Show the exact C-x 8 RET invocation in describe-char.
* lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
invocation instead of a template. (Bug#20522)
Artur Malabarba [Tue, 26 May 2015 08:57:17 +0000 (09:57 +0100)]
* lisp/emacs-lisp/package.el: Don't erase tags on refresh
(package-menu--post-refresh): Call `tabulated-list-print' with the
UPDATE argument. This only affects the refresh action, the revert
action still erases tags.
(package-menu-get-status): Change `assq' to `assoc'.
(package-menu--mark-upgrades-1): New function.
(package-menu--mark-upgrades-pending): New variable.
(package-menu-mark-upgrades): Use them to delay marking until
after refresh is done.
(package-menu--post-refresh): Call mark-upgrades-1 if
mark-upgrades-pending is non-nil.
Michael Albinus [Wed, 27 May 2015 16:49:29 +0000 (18:49 +0200)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
Conflicts:
lisp/net/tramp.el
Michael Albinus [Wed, 27 May 2015 16:42:33 +0000 (18:42 +0200)]
Eli Zaretskii [Wed, 27 May 2015 16:19:35 +0000 (19:19 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Wed, 27 May 2015 16:19:02 +0000 (19:19 +0300)]
; etc/NEWS: Document recent changes in 'etags'.
Stefan Monnier [Wed, 27 May 2015 16:16:16 +0000 (12:16 -0400)]
* lisp/isearch.el (isearch--current-buffer): New var
(isearch-update): Set cursor-sensor-inhibit here.
(isearch-done): Unset cursor-sensor-inhibit in the right buffer (bug#20532).
Glenn Morris [Wed, 27 May 2015 15:57:39 +0000 (08:57 -0700)]
; * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name): Fix previous.
Stefan Monnier [Wed, 27 May 2015 15:52:28 +0000 (11:52 -0400)]
Change inhibit-point-motion-hooks to t
* src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
to t and document it as obsolete.
Eli Zaretskii [Wed, 27 May 2015 14:35:11 +0000 (17:35 +0300)]
Support ZIP files that use Zip64 extensions
* lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
format of central directory offsets used by Zip64 extensions.
(Bug#20665)
Michael Albinus [Wed, 27 May 2015 13:48:13 +0000 (15:48 +0200)]
New test tramp-test30-make-auto-save-file-name
* tramp-tests.el (tramp-test30-make-auto-save-file-name): New test.
(tramp-test31-special-characters)
(tramp-test31-special-characters-with-stat)
(tramp-test31-special-characters-with-perl)
(tramp-test31-special-characters-with-ls, tramp-test32-utf8)
(tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
(tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
(tramp-test34-recursive-load, tramp-test35-unload): Rename.
Michael Albinus [Wed, 27 May 2015 13:47:16 +0000 (15:47 +0200)]
Improve tramp-handle-make-auto-save-file-name
* tramp.el (tramp-auto-save-directory): Add :tags.
(tramp-handle-make-auto-save-file-name): Let native
`make-auto-save-file-name' use `auto-save-file-name-transforms',
if `tramp-auto-save-directory' is not set.
Glenn Morris [Wed, 27 May 2015 10:18:31 +0000 (06:18 -0400)]
; Auto-commit of loaddefs files.
Glenn Morris [Wed, 27 May 2015 06:42:59 +0000 (23:42 -0700)]
No longer set dired-directory in eshell. (Bug#16477)
* lisp/eshell/esh-mode.el (eshell-mode):
* lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
Glenn Morris [Wed, 27 May 2015 06:29:51 +0000 (23:29 -0700)]
* lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
Glenn Morris [Wed, 27 May 2015 06:29:25 +0000 (23:29 -0700)]
Make c-submit-bug-report file reports at debbugs.gnu.org. (Bug#15784)
* lisp/progmodes/cc-mode.el (c-mode-help-address):
Change to submit@debbugs.
(c-mode-bug-package): New constant.
(mail-position-on-field): Declare.
(c-submit-bug-report): Insert X-Debbugs-Package header.
* doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
Mention debbugs.gnu.org.
Glenn Morris [Wed, 27 May 2015 01:04:19 +0000 (21:04 -0400)]
* lisp/mail/rmailsum.el: Commas no longer separate regexps. (Bug#19026)
(rmail-summary-by-recipients, rmail-summary-by-topic)
(rmail-summary-by-senders): No longer use mail-comma-list-regexp.
* doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
; * etc/NEWS: Mention this.
Paul Eggert [Tue, 26 May 2015 19:29:38 +0000 (12:29 -0700)]
Handle curved quotes in info files
* lisp/calc/calc-help.el (calc-describe-thing):
* lisp/info.el (Info-find-index-name)
(Info-try-follow-nearest-node, Info-fontify-node):
* lisp/vc/ediff-help.el (ediff-help-for-quick-help):
In info files, process quotes ‘like this’ the same way we process
quotes `like this'. This catches a few places we missed earlier.
Dmitry Gutov [Tue, 26 May 2015 16:28:38 +0000 (19:28 +0300)]
xref-prompt-for-identifier: Use a list value
* lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
value, to be interpreted as a list of commands.
(xref--prompt-p): New function.
(xref--read-identifier): Use it.
Eli Zaretskii [Tue, 26 May 2015 15:29:40 +0000 (18:29 +0300)]
Teach MS-Windows font back-end return per-glyph ascent/descent
* src/w32font.h (struct w32_metric_cache): Add ascent and descent
values.
* src/w32font.c (w32font_text_extents): Compute, cache, and
accumulate per-glyph ascent and descent values, instead of copying
global values from the font. If the values are not available from
the font data, i.e., non-TTF fonts, fall back on font-global values.
(compute_metrics): Compute and return per-glyph ascent and descent
values, if returned by GetGlyphOutlineW, falling back on
font-global values. (Bug#20628)
* src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
height of rectangle to be drawn, to be compatible with
XDrawRectangle. Fixes glyphless-char display as hex codes in a
box, when per-glyph ascent/descent values are used.
Artur Malabarba [Tue, 26 May 2015 08:32:45 +0000 (09:32 +0100)]
* lisp/emacs-lisp/tabulated-list.el: Don't sort without sorter
(tabulated-list-print): Don't sort if sorter is nil
Michael Albinus [Tue, 26 May 2015 07:35:38 +0000 (09:35 +0200)]
Fix Bug#20621
* lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it. There
are major modes which set `auto-save-mode' on their own rules;
Tramp shall not overwrite such settings.
Fixes: debbugs:20621
Glenn Morris [Tue, 26 May 2015 06:27:55 +0000 (23:27 -0700)]
* lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
(desktop-load-file): Guess that "foobar" defines "foobar-mode".
(desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
Doc updates.
(vc-dir-mode): Remove unnecessary autoload.
; Ref: http://debbugs.gnu.org/19226#14
Philipp Stephani [Mon, 25 May 2015 21:03:50 +0000 (17:03 -0400)]
* lisp/term/xterm.el: Add gui-get-selection support via OSC-52
(xterm--extra-capabilities-type): Add `getSelection'.
(xterm--query): Add `no-async' argument.
(xterm--init-activate-get-selection): New function.
(terminal-init-xterm): Use it.
(xterm--init-modify-other-keys): Rename from
terminal-init-xterm-modify-other-keys.
(xterm--init-bracketed-paste-mode): Rename from
terminal-init-xterm-bracketed-paste-mode.
(xterm--init-activate-set-selection): Rename from
terminal-init-xterm-activate-set-selection.
(xterm--selection-char): New function.
(gui-backend-set-selection): Use it. Use the &context to only apply
this method in terminals where we enabled the feature.
(gui-backend-get-selection): New method.
Daniel Colascione [Mon, 25 May 2015 20:51:35 +0000 (13:51 -0700)]
Add C-language keyword constants to C++
* lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
keyword constants to C++.
Paul Eggert [Mon, 25 May 2015 20:06:11 +0000 (13:06 -0700)]
Make TAGS files more portable to MS-Windows
* etc/NEWS: Document this.
* lib-src/etags.c (readline_internal) [DOS_NT]:
Don't treat CRs differently from GNUish hosts.
* lisp/progmodes/etags.el (etags-goto-tag-location):
Adjust STARTPOS to account for the skipped CRs in dos-style files.
Michael Albinus [Mon, 25 May 2015 18:31:54 +0000 (20:31 +0200)]
Improve fix of debbugs:20634 in tramp-sh.el
Eli Zaretskii [Mon, 25 May 2015 15:08:09 +0000 (18:08 +0300)]
Fix a typo in last commit
* lib-src/etags.c (C_entries): Fix a typo.
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5:
* test/etags/CTAGS.good: Update due to the change in etags.c.
Eli Zaretskii [Mon, 25 May 2015 15:02:21 +0000 (18:02 +0300)]
Fix tagging of class members in C-like OO languages
* lib-src/etags.c (longopts): Add new option --class-qualify and
its shorthand -Q.
(print_help): Add help text for --class-qualify.
(main): Add handling of -Q.
(consider_token, C_entries) <omethodparm>: Append argument types
to Objective C methods only if --class-qualify was specified.
Qualify C++, Objective C, and Java class members with their class
names only if --class-qualify was specified.
(C_entries): If --class-qualify was not specified, remove the
namespace and class qualifiers from tag names of C++ methods.
This allows to use etags.el as xref back-end without the
tag-symbol-match-p method, which greatly increases the number of
potentially false positives. (Bug#20629)
* doc/man/etags.1: Update to document the new --class-qualify
option.
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5:
* test/etags/CTAGS.good: Update due to changes in etags.c.
Stefan Monnier [Mon, 25 May 2015 14:53:52 +0000 (10:53 -0400)]
(cl-generic-define-method): Side effects are evil (bug#20644)
* lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
cons-cells that might be used as keys in an `equal' hash-table.
Lars Magne Ingebrigtsen [Mon, 25 May 2015 14:45:17 +0000 (16:45 +0200)]
Make erc timestamps visible again
* lisp/erc/erc-stamp.el (erc-munge-invisibility-spec): Make
timestamps visible again (if requested).
Eli Zaretskii [Mon, 25 May 2015 14:24:33 +0000 (17:24 +0300)]
Fix last change in etags.c that broke tagging compresed files
* lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
quoting of decompression shell command for MS-Windows/MS-DOS.
Stefan Monnier [Mon, 25 May 2015 13:39:35 +0000 (09:39 -0400)]
* lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist
Fixes: debbugs:20639
Michael Albinus [Mon, 25 May 2015 10:40:57 +0000 (12:40 +0200)]
Orivej Desh [Mon, 25 May 2015 10:25:39 +0000 (12:25 +0200)]
Fix IPv6 addresses in Tramp
* lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
Add sqare brackets around host name.
Copyright-paperwork-exempt: yes
Michael Albinus [Mon, 25 May 2015 08:44:51 +0000 (10:44 +0200)]
Inhibit `epa-file-handler' in Tramp
Fixes: debbugs:20634
* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
(tramp-sh-handle-insert-file-contents-literally): Inhibit also
`epa-file-handler'.
Stefan Monnier [Mon, 25 May 2015 02:38:05 +0000 (22:38 -0400)]
* lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring
(pcase-let): Document the behavior in case the pattern doesn't match.
Artur Malabarba [Sun, 24 May 2015 22:38:53 +0000 (23:38 +0100)]
* lisp/emacs-lisp/tabulated-list.el: New optional print method
(tabulated-list-print): New optional argument, UPDATE. If
non-nil, the list is printed by only adding and deleting the
changed entries, instead of erasing the whole buffer. This method
is much faster when few or no entries have changed.
* doc/lispref/modes.texi (Tabulated List Mode): Document it.
* etc/NEWS: Document it.
Artur Malabarba [Sun, 24 May 2015 21:57:24 +0000 (22:57 +0100)]
* lisp/emacs-lisp/tabulated-list.el: Improve printing
(tabulated-list--get-sorter): New function.
(tabulated-list-print): Restore window-line when remember-pos is
passed and optimize away the `nreverse'.
Paul Eggert [Sun, 24 May 2015 21:20:10 +0000 (14:20 -0700)]
Simpilify etags TEX mode scanning
* lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
Remove static vars.
(TeX_commands): Deduce escapes here instead.
(TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
This removes the need for a reset_input call.
Paul Eggert [Sun, 24 May 2015 21:20:09 +0000 (14:20 -0700)]
Improve etags I/O error reporting
* lib-src/etags.c:
Don't include sys/types.h and sys/stat.h; no longer needed.
(infilename): New static var.
(process_file_name): Don't call 'stat'. Instead, just open the
file for reading and report any errors. Don't bother making
a copy of the file argument; it's not needed. Be more careful to
use the failing errno when reporting an error.
Quote the real name better (though no perfectly)
when passing it to the shell.
(reset_input): New function, which reports I/O errors.
All uses of 'rewind' changed to use this function.
(perhaps_more_input): New function, which also checks for
I/O errors. All uses of 'feof' changed to use this function.
(analyze_regex): Report an error if fclose fails.
(readline_internal): Report an error if getc fails.
(etags_mktmp): Return an error if close fails.
Paul Eggert [Sun, 24 May 2015 21:20:09 +0000 (14:20 -0700)]
etags.c: avoid side effects in 'if'
* lib-src/etags.c (process_file_name, Perl_functions)
(TEX_decode_env): Hoist side effects into previous statement.
Paul Eggert [Sun, 24 May 2015 15:04:03 +0000 (08:04 -0700)]
.gitignore tweaks
* .gitignore: Ignore all *.stamp files. Sort.
Ignore [0-9]*.txt (commonly used name for git patches)
and /vc-dwim-log-* (vc-dwim temporary).
Glenn Morris [Sun, 24 May 2015 10:25:35 +0000 (06:25 -0400)]
; Auto-commit of ChangeLog files.
Eli Zaretskii [Sun, 24 May 2015 07:19:36 +0000 (10:19 +0300)]
Fix last change in etags.c, which failed the test suite
* lib-src/etags.c (intoken): Add '$' to the set, as it was there
before the last change.
Glenn Morris [Sat, 23 May 2015 23:38:13 +0000 (16:38 -0700)]
Remove charset map files from repository, generate in first bootstrap
* admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
(all): Create the stamp file.
(extraclean): Delete the stamp file.
* src/Makefile.in (lispintdir, charsets): New variables.
(${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
New rules.
(emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
* lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
* etc/charsets/*.map: Remove from repository.
; * admin/charsets/mapconv: Fix typo in output comment.
; * etc/charsets/README: Small update.
; * .gitignore: Update for charset changes.
Paul Eggert [Sat, 23 May 2015 22:18:12 +0000 (15:18 -0700)]
Cleanup etags.c to use locale-independent code
Although this doesn't alter behavior (as etags doesn't use
setlocale), the new version is more clearly locale-independent and
the executable is a bit smaller on my platform.
* lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
Include <c-ctype.h> instead of <ctype.h>.
(CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
(begtk, midtk):
Remove; no longer needed.
(iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
c_islower, c_tolower, respectively.
(notinname, begtoken, intoken, endtoken): Rewrite as functions
instead of macros, and initialize the tables at compile-time
rather than at run-time.
Paul Eggert [Sat, 23 May 2015 22:07:17 +0000 (15:07 -0700)]
Put default action first in src/Makefile
* src/Makefile.in (all): Put this rule before lisp.mk.
That way, plain 'make' works in the src directory again.
Glenn Morris [Sat, 23 May 2015 22:05:02 +0000 (15:05 -0700)]
* Makefile.in: Fix extraclean rule.
(extraclean_dirs): New.
(extraclean): Use it.
Eli Zaretskii [Sat, 23 May 2015 19:19:08 +0000 (22:19 +0300)]
Avoid compiler warning in image.c on MS-Windows
* src/w32term.h (x_query_color): Add prototype, to avoid compiler
warning in image.c.
Glenn Morris [Sat, 23 May 2015 18:25:20 +0000 (11:25 -0700)]
Fix --without-toolkit-scroll-bars builds.
* src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
Add new argument to x_clear_area1.
(XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
Update x_clear_area arguments.
Glenn Morris [Sat, 23 May 2015 18:07:40 +0000 (11:07 -0700)]
* admin/charsets/glibc/: New directory, imported from glibc 2.21.
* admin/charsets/Makefile.in (GLIBC_CHARMAPS):
Change to included version.
(LOCAL, local, totalclean): Remove.
(extraclean): Delete all generated files.
Stefan Monnier [Sat, 23 May 2015 16:06:23 +0000 (12:06 -0400)]
* lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
Stefan Monnier [Sat, 23 May 2015 16:05:47 +0000 (12:05 -0400)]
* lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
Stefan Monnier [Sat, 23 May 2015 16:05:21 +0000 (12:05 -0400)]
tags-completion-at-point-function: Don't trust the find-tag function
* lisp/progmodes/etags.el (tags-completion-at-point-function):
Don't trust the find-tag function.
Paul Eggert [Sat, 23 May 2015 16:01:40 +0000 (09:01 -0700)]
Pacify --enable-gcc-warnings
* src/frame.h (x_query_color): Remove redundant extern decl.
* src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
(ftcrfont_match, ftcrfont_open, ftcrfont_close)
(ftcrfont_text_extents, ftcrfont_draw):
* src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
(XTframe_up_to_date, x_clear_area1, x_clear_frame)
(x_ins_del_lines, frame_highlight, frame_unhighlight)
(x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
(x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
(x_update_window_begin, x_connection_closed)
(x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
(x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
(*x_gc_get_ext_data, x_extension_initialize)
(x_cr_accumulate_data):
Remove redundant static decl. Many of these GCC doesn't complain
about, but we might as well clean out the duplication while we're
in the neighborhood.
* src/xterm.c (x_fill_trapezoid_for_relief):
Remove decl of nonexistent function.
Paul Eggert [Sat, 23 May 2015 15:35:49 +0000 (08:35 -0700)]
; Omit entries that will appear in ChangeLog.2
Stefan Monnier [Sat, 23 May 2015 15:32:29 +0000 (11:32 -0400)]
Replace gui-method macros with cl-generic with &context
* lisp/frame.el (gui-method--name, gui-method, gui-method-define)
(gui-method-declare, gui-call): Remove.
(frame-creation-function): Use cl-defgeneric.
(make-frame): Adjust callers.
* lisp/menu-bar.el (menu-bar-edit-menu):
Use gui-backend-selection-exists-p.
* lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
(gui-backend-get-selection): New cl-generic to replace
gui-get-selection method.
(gui-backend-set-selection): New cl-generic to replace
gui-set-selection method.
(gui-selection-owner-p): New cl-generic to replace
gui-selection-owner-p method.
(gui-backend-selection-exists-p): New cl-generic to replace
gui-selection-exists-p method. Adjust all callers.
* lisp/server.el (server-create-window-system-frame): Don't ignore
window-system spec even when unsupported.
* lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
* lisp/startup.el (handle-args-function, window-system-initialization):
Use cl-defgeneric.
(command-line): Adjust calls accordingly.
* lisp/term/ns-win.el (ns-window-system-initialization): Turn into
a window-system-initialization method.
(handle-args-function, frame-creation-function): Use cl-defmethod.
(gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
(gui-get-selection): Use cl-defmethod on the new functions instead.
* lisp/term/pc-win.el (w16-get-selection-value): Turn into
a gui-backend-get-selection method.
(gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
Use cl-defmethod on the new functions instead.
(msdos-window-system-initialization): Turn into
a window-system-initialization method.
(frame-creation-function, handle-args-function): Use cl-defmethod.
* lisp/term/w32-win.el (w32-window-system-initialization): Turn into
a window-system-initialization method.
(handle-args-function, frame-creation-function): Use cl-defmethod.
(gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
(gui-get-selection): Use cl-defmethod on the new functions instead.
* lisp/term/x-win.el (x-window-system-initialization): Turn into
a window-system-initialization method.
(handle-args-function, frame-creation-function): Use cl-defmethod.
(gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
(gui-get-selection): Use cl-defmethod on the new functions instead.
* lisp/term/xterm.el (xterm--set-selection): Turn into
a gui-backend-set-selection method.
* src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
(Fns_selection_owner_p): Remove unused arg `terminal'.
(Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
Eli Zaretskii [Sat, 23 May 2015 13:47:47 +0000 (16:47 +0300)]
Revert "Fix etags Bug#20629 that broke C++ support."
This reverts commit
13dd9d4f7e75d2c78aa5537cef09de03663e9748.
Jan D [Sat, 23 May 2015 12:13:44 +0000 (14:13 +0200)]
Fix etags Bug#20629 that broke C++ support.
* etags.el (etags-xref-find-definitions-tag-order): Revert commit
from Sun May 10 (Bug#20629).
Jan D [Sat, 23 May 2015 10:34:45 +0000 (12:34 +0200)]
Merge branch 'cairo'.
Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
Jan D [Sat, 23 May 2015 10:28:54 +0000 (12:28 +0200)]
Merge branch 'master' into cairo
Jan D [Sat, 23 May 2015 10:27:56 +0000 (12:27 +0200)]
Fixes to compile cairo branch without cairo.
* src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
first argument.
* src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
USE_CAIRO.
Artur Malabarba [Sat, 23 May 2015 09:13:02 +0000 (10:13 +0100)]
* lisp/emacs-lisp/package.el: Always update selected-packages
(package--update-selected-packages): New function.
(package-menu-execute): Use it before starting the transaction,
this way the list of selected packages is updated even when the
transaction fails.
(package-menu--perform-transaction): Don't edit selected-packages.
Eli Zaretskii [Sat, 23 May 2015 08:35:45 +0000 (11:35 +0300)]
Fix etags reading of compressed files
* lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
Include fcntl.h, for O_CLOEXEC.
(process_file_name): Don't use 'popen', whose streams cannot be
rewound. Instead, uncompress the file to a temporary file,
created by 'etags_mktmp', and read from that as usual.
(etags_mktmp): New function.
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5: Update to be consistent with latest
changes in etags.c regarding reading compressed files.
Eli Zaretskii [Sat, 23 May 2015 08:15:30 +0000 (11:15 +0300)]
Improve documentation of 'set-fontset-font'
* doc/lispref/display.texi (Fontsets): Document the value of nil
for the 3rd argument of 'set-fontset-font'.
Eli Zaretskii [Sat, 23 May 2015 08:03:30 +0000 (11:03 +0300)]
Fix documentation of forward-line
* src/cmds.c (Fforward_line): Clarify the return value if the line
at end of accessible portion of the buffer has no newline.
* doc/lispref/positions.texi (Text Lines): Document what happens
if the line at end of accessible portion of buffer has no newline.
(Bug#20587)
Glenn Morris [Fri, 22 May 2015 23:17:51 +0000 (19:17 -0400)]
* admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
Glenn Morris [Fri, 22 May 2015 23:15:55 +0000 (19:15 -0400)]
* admin/charsets/mapconv (LC_ALL): Set to C.
Glenn Morris [Fri, 22 May 2015 23:05:59 +0000 (19:05 -0400)]
* Makefile.in: Add admin/charsets into top-level clean rules.
(clean): Add admin/charsets.
(maybeclean_dirs): New variable.
(distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
Glenn Morris [Fri, 22 May 2015 22:44:46 +0000 (18:44 -0400)]
* admin/charsets/Makefile.in (LOCAL, local): Fix members.
Artur Malabarba [Fri, 22 May 2015 10:00:10 +0000 (11:00 +0100)]
* lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
Glenn Morris [Fri, 22 May 2015 06:44:00 +0000 (23:44 -0700)]
Generate admin/charsets Makefile via configure, and make more portable.
* configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
(admin/charsets/Makefile): Generate it.
* admin/charsets/Makefile.in: Rename from Makefile.
(AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
New variables, set by configure.
(charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
(am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
(am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
(cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
(TRANS_TABLE, CHARSETS): Add directory prefix to value.
(all): Declare PHONY.
(local): New PHONY target.
(map_template): New template. Use to define short PHONY aliases.
(*.map): Add directory prefixes to targets and prerequisites.
Respect make verbosity.
(JISC6226.map): Replace non-portable sed append without newline.
(install): Remove rule.
(clean): Only delete temporary sedscript.
(bootstrap-clean, distclean, maintainer-clean, extraclean)
(totalclean): New PHONY rules.
* admin/charsets/mapconv (BASE): Replace basename with expr.
(FILE): Add "mapfiles" subdirectory.
(AWK): New variable. Use throughout in place of "awk".
(main): Use "gunzip -c" in place of "zcat".
Don't leave whitespace before "p", for older sed.
* admin/charsets/mapfiles/PTCP154: Add final newline,
to make older sed versions happy.
; * .gitignore: Ignore admin/charsets/Makefile.
Stefan Monnier [Fri, 22 May 2015 04:03:12 +0000 (00:03 -0400)]
* lisp/autorevert.el: Use lexical-binding. Fix hook usage.
(global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
(auto-revert-notify-watch-descriptor): Use defvar-local.
(find-file-hook, auto-revert-tail-mode, )
(auto-revert-notify-add-watch): Use setq-local.
(auto-revert-notify-add-watch): Don't call make-local-variable on
kill-buffer-hook (bug#20601).
Stefan Monnier [Fri, 22 May 2015 03:46:10 +0000 (23:46 -0400)]
Change defgeneric so it doesn't completely redefine the function
* lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
previously defined methods.
(cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
(cl--generic-prefill-dispatchers): Only define during compilation.
(cl-method-qualifiers): Remove redundant alias.
(help-fns-short-filename): Silence byte-compiler.
* test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.
Artur Malabarba [Thu, 21 May 2015 20:26:57 +0000 (21:26 +0100)]
(package-menu-execute): Remove reference to remove-dups
kwhite [Thu, 21 May 2015 19:30:18 +0000 (14:30 -0500)]
* lisp/erc/erc.el: Hide network/channel messages
(erc-network-hide-list, etc-channel-hide-list): New lists to define
message types per network/channel.
(erc-add-targets): New function to parse list of targets
(erc-hide-current-message-p): Modified to check for new targets
Paul Eggert [Thu, 21 May 2015 17:04:45 +0000 (10:04 -0700)]
Don't quote nil and t in doc strings
This is as per "Tips for Documentation Strings" in the elisp manual.
For consistency, do the same in diagnostics and comments.
Eli Zaretskii [Thu, 21 May 2015 16:38:19 +0000 (19:38 +0300)]
Fix a minor problem with mouse-face on mode line
* src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
mouse face also if the mouse pointer hovers above mode-line glyphs
that don't come from any Lisp string. (Bug#20620)
Artur Malabarba [Thu, 21 May 2015 16:10:40 +0000 (17:10 +0100)]
* lisp/emacs-lisp/package.el: Fix selected-package logic
(package-menu-execute): Mark as selected all non-upgrade packages
being installed.
(package-menu--perform-transaction): Don't mark anything.
Artur Malabarba [Thu, 21 May 2015 08:58:45 +0000 (09:58 +0100)]
* lisp/emacs-lisp/package.el: Mode-line progress report
(package-menu--transaction-status): New variable.
(package-menu-mode, package-menu--perform-transaction): Use it.
Artur Malabarba [Thu, 21 May 2015 07:57:31 +0000 (08:57 +0100)]
* lisp/emacs-lisp/package.el: Better transaction messages
(package-menu--partition-transaction): New function.
(package-menu--prompt-transaction-p, package-menu-execute): Use
it.
(package-menu--perform-transaction): Don't do any messaging.
Artur Malabarba [Wed, 20 May 2015 19:54:20 +0000 (20:54 +0100)]
* lisp/emacs-lisp/package.el: Revert async package transactions
(package-menu-async): Update doc.
(package-install-from-archive, package-download-transaction)
(package-install, package-menu--perform-transaction)
(package-menu-execute): Remove asynchronous functionality.
Paul Eggert [Thu, 21 May 2015 05:16:53 +0000 (22:16 -0700)]
Revert doc string changes to f90.el
Problem reported by Glenn Morris in:
http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
* lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
Revert recent changes to doc strings, as it's intended that they
use grave accent, not quote.
Eli Zaretskii [Wed, 20 May 2015 19:07:30 +0000 (22:07 +0300)]
; * doc/lispref/nonascii.texi (Character Properties): Fix a typo.
(Bug#20618)
Bozhidar Batsov [Wed, 20 May 2015 15:50:38 +0000 (18:50 +0300)]
Improve parameter name
Bozhidar Batsov [Wed, 20 May 2015 15:49:20 +0000 (18:49 +0300)]
Add new inline function `hash-table-empty-p'
Glenn Morris [Wed, 20 May 2015 15:34:53 +0000 (08:34 -0700)]
; * test/automated/subr-tests.el: Standardize license notice.
Paul Eggert [Wed, 20 May 2015 15:23:09 +0000 (08:23 -0700)]
Don't require help-fns when not needed
* lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
* lisp/emacs-lisp/elint.el:
Don't require help-fns at the top level.
* lisp/emacs-lisp/advice.el (ad-arglist):
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
Don't require help-fns. (Bug#17001)
Eli Zaretskii [Wed, 20 May 2015 15:18:33 +0000 (18:18 +0300)]
Fix slash collapsing in etags on MS-Windows
* lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
MS-Windows code from the Posix code, and support collapsing both
forward- and back-slashes on MS-Windows. Fixes a regression found
by the test suite.
Eli Zaretskii [Wed, 20 May 2015 15:14:21 +0000 (18:14 +0300)]
Improve documentation of glyphless-char-display
* doc/lispref/display.texi (Glyphless Chars): Improve
documentation of glyphless character display.
Eli Zaretskii [Wed, 20 May 2015 15:09:37 +0000 (18:09 +0300)]
Fix "acronym" display of glyphless characters on w32
* src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
ignore "acronym" substitutes of 1 character for glyphless characters.
Oleh Krehel [Wed, 20 May 2015 13:38:55 +0000 (15:38 +0200)]
Add an automated test for let-when-compile
* test/automated/subr-tests.el (let-when-compile): New test.
Oleh Krehel [Tue, 19 May 2015 07:49:12 +0000 (09:49 +0200)]
Add let-when-compile macro instead of using pcase-let
* lisp/subr.el (let-when-compile): New let-like macro that makes its
bindings known to macros like `eval-when-compile' in the body.
* lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
`let-when-compile'. Also comment out the unused lexical var
`el-kws-re'.
The change greatly improves readability, while providing almost the
same (even shorter) byte code: instead of pre-evaluating 10 variables,
tossing them into a list, and destructuring that list a full screen
page later, the variables are simply bound as they are evaluated,
wrapped individually in `eval-when-compile'.
Artur Malabarba [Wed, 20 May 2015 13:13:22 +0000 (14:13 +0100)]
* lisp/emacs-lisp/package.el: "Delete" button in Help buffer
(package-delete-button-action): New function.
(describe-package-1): Add Delete button.
Artur Malabarba [Wed, 20 May 2015 13:03:03 +0000 (14:03 +0100)]
* lisp/emacs-lisp/package.el: Better dependency description
(package--used-elsewhere-p): New optional arg, ALL, and return
package-desc objects instead of names.
(package-delete): Update accordingly.
(describe-package-1): Describe which packages require the package.
Martin Rudalics [Wed, 20 May 2015 08:35:13 +0000 (10:35 +0200)]
Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
* src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
Fix doc-string (Bug#20533).
Martin Rudalics [Wed, 20 May 2015 06:49:23 +0000 (08:49 +0200)]
Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
* lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
(switch-to-buffer): If the selected window is strongly dedicated
to its buffer, signal error before prompting for buffer name. Handle
`switch-to-buffer-in-dedicated-window'. (Bug#20472)
* doc/lispref/windows.texi (Switching Buffers): Document
`switch-to-buffer-in-dedicated-window'.